As SMP computer systems continue to improve in performance, the cache designs are growing exponentially. These larger cache sizes are making it much more likely to have soft and hard array failures. Previously, a function called set delete was added to remove cache sections that have known defects. However, much of the prior art removes a lot of sets or compartments from the cache. The prior art used in the preferred embodiment allows for the deletion of one compartment within a congruence class without a full compartment delete. However, if a wordline failure occurs, all compartments within the wordline may fail and eventually be deleted. This can lead to a system checkstop.
Another aspect of the prior art of this invention allows for the soft repairing of fuses. When cache reliability failures occur on machines that are already tested and running, it is not feasible to go back and blow more fuses for the cache failures. The prior art allowed for programmable fuse support so that when reliability failures occurred, they could be repaired later in the life of the product. Prior art allowed for separate LBIST and ABIST testing, but the combined test did not work when programmable fuse values were needed in addition to the blown fuses. Because of the prior art programmable fuse logic, there were some cache test modes that would fail with programmable fuses.